package com.ccys.db.vo.userManagement;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Data
@ApiModel("tbl_memberweb VO")
@EqualsAndHashCode(callSuper = false)
public class TblMemberDetailWebVO implements Serializable {

        @ApiModelProperty(value = "是否可以使用think well,todo在哪儿设置")
        private Integer accessThinkwell;
        @ApiModelProperty(value = "activatedPincode")
        private Integer activatedPincode;
        @ApiModelProperty(value = "OTP验证码")
        private String activeCode;
        @ApiModelProperty(value = "激活状态 输入 OTP 之后改为 1")
        private Integer actived;
        @ApiModelProperty(value = "aiaIdentifier")
        private String aiaIdentifier;
        @ApiModelProperty(value = "aiaMember")
        private Integer aiaMember;

        @ApiModelProperty(value = "某种卡的反面照")
        private String backGeneralCard;



        @ApiModelProperty(value = "猜测app设置")
        private Integer canShowAddProfileScreen;
        @ApiModelProperty(value = "检查用户是否在新加坡并且是否可以使用paypal支付,todo 确认怎么使用")
        private Integer canShowPaypalPrompt;
        @ApiModelProperty(value = "猜测app设置")
        private Integer canShowProfileEmailActivated;
        @ApiModelProperty(value = "也许在app设置")
        private Integer checkedAddAllergy;
        @ApiModelProperty(value = "也许在app设置")
        private Integer checkedAddLongterm;
        @ApiModelProperty(value = "childPhoto")
        private String childPhoto;
        @ApiModelProperty(value = "自动生成，在前端展示为用户编号")
        private String memberNo;
        @ApiModelProperty(value = "phoneCountryId ")
        private String phoneCountryId;
        @ApiModelProperty(value = "与contryId可以不一样，todo他们的关系是什么？")
        private String currentCountry;
        @ApiModelProperty("当前所在国家 country 名称")
        private String currentCountryName;
        @ApiModelProperty(value = "生日")
        private Date dob;
        @ApiModelProperty(value = "医生端操作是否确认")
        private Integer doctorVerified;
        @ApiModelProperty(value = "email")
        private String email;
        @ApiModelProperty(value = "emergencyCountryId")
        private String emergencyCountryId;
        @ApiModelProperty(value = "emergencyFirstName")
        private String emergencyFirstName;
        @ApiModelProperty(value = "emergencyLastName")
        private String emergencyLastName;
        @ApiModelProperty(value = "emergencyPhone")
        private String emergencyPhone;
        @ApiModelProperty(value = "emergencyRelationship")
        private String emergencyRelationship;
        @ApiModelProperty(value = "密码错误次数")
        private Integer failedPasswordAttempts;
        @ApiModelProperty(value = "firstName")
        private String firstName;
        @ApiModelProperty(value = "首次登陆时间")
        private Date firstVisit;
        @ApiModelProperty(value = "第一次使用think well的时间")
        private Date firstVisitThinkwell;

        @ApiModelProperty(value = "某种卡的正面照")
        private String frontGeneralCard;
        @ApiModelProperty(value = "g6pd")
        private Integer g6pd;
        @ApiModelProperty(value = "0 女 1 男 -1 未知")
        private Integer gender;
        @ApiModelProperty(value = "height")
        private BigDecimal height;
        @ApiModelProperty(value = "homeAddress")
        private String homeAddress;
        @ApiModelProperty(value = "头像")
        private String image;
        @ApiModelProperty(value = "todo")
        private Integer isAliasMixpanel;
        @ApiModelProperty(value = "todo")
        private Integer isDraft;
        @ApiModelProperty(value = "todo")
        private Integer isNeedVerifyWhenRegister;
        @ApiModelProperty(value = "iterationPincode")
        private Integer iterationPincode;
        @ApiModelProperty(value = "最后一次修改密码的时间")
        private Date lastChangePassword;
        @ApiModelProperty(value = "语言简拼，如果做国际化需要让前端选择语言并存储id")
        private String lastLanguage;
        @ApiModelProperty(value = "lastName")
        private String lastName;
        @ApiModelProperty(value = "最后一次输错验证码时间")
        private Date lastTimeRetryOtp;
        @ApiModelProperty(value = "最后一次访问时间 todo 需要讨论一下")
        private Date lastVisit;
        @ApiModelProperty(value = "locationAddress")
        private String locationAddress;
        @ApiModelProperty(value = "locationCity")
        private String locationCity;
        @ApiModelProperty(value = "locationCountry")
        private String locationCountry;
        @ApiModelProperty(value = "locationDetailAddress")
        private String locationDetailAddress;
        @ApiModelProperty(value = "locationFloorNumber")
        private String locationFloorNumber;
        @ApiModelProperty(value = "locationLatitude")
        private Float locationLatitude;
        @ApiModelProperty(value = "locationLongitude")
        private Float locationLongitude;
        @ApiModelProperty(value = "locationPostalCode")
        private String locationPostalCode;
        @ApiModelProperty(value = "locationState")
        private String locationState;
        @ApiModelProperty(value = "账号锁定")
        private Integer locked;
        @ApiModelProperty(value = "锁定时间")
        private Date lockedOn;
        @ApiModelProperty(value = "todo")
        private String memEmergencyRelationshipId;
        @ApiModelProperty(value = "todo")
        private Integer memInactivedCounter;
        @ApiModelProperty(value = "todo")
        private Date memInactivedDate;
        @ApiModelProperty(value = "todo")
        private Integer memRequestUpdateContactInfo;
        @ApiModelProperty(value = "todo")
        private Boolean memStayLoggedIn;
        @ApiModelProperty(value = "todo")
        private Date memTempLockTo;
        @ApiModelProperty(value = "国籍")
        private String nationality;
        @ApiModelProperty(value = "newsLetter")
        private Integer newsLetter;
        @ApiModelProperty(value = "nricFin")
        private String nricFin;
        @ApiModelProperty(value = "重新发验证码次数")
        private Integer numberOfResendOtp;
        @ApiModelProperty(value = "验证码输错次数")
        private Integer numberOfRetryOtp;
        @ApiModelProperty(value = "officeAddress")
        private String officeAddress;
        @ApiModelProperty(value = "家长/监护人账号 id")
        private String parentId;
        //废弃 改用 frontIdentificationPhoto 标识
        /*@ApiModelProperty(value = "护照照片")
        private String passport;*/
        @ApiModelProperty(value = "公用证件照（护照照片）")
        private String frontIdentificationPhoto;
        @ApiModelProperty("证件反面")
        private String backIdentificationPhoto;
        @ApiModelProperty(value = "加密方式:PBKDF2-SHA1")
        private String password;
        @ApiModelProperty(value = "更改nric后会有一个pending nric,todo 确认是否为上一次的nric")
        private String pendingNric;
        @ApiModelProperty(value = "phone")
        private String phone;
        @ApiModelProperty(value = "解锁app的code, todo 以及一下几个pin怎么使用")
        private String pincode;
        @ApiModelProperty(value = "pregnant")
        private Integer pregnant;
        @ApiModelProperty(value = "注册日期")
        private Date regdate;
        @ApiModelProperty(value = "父账号关系 1parent 2guardian 3mother 4father")
        private Integer relationship;
        @ApiModelProperty(value = "发送验证码的时间")
        private Date requestActiveDate;
        @ApiModelProperty(value = "saltPincode")
        private String saltPincode;
        @ApiModelProperty(value = "singpassGender")
        private Integer singpassGender;
        @ApiModelProperty(value = "singpassUuid")
        private String singpassUuid;
        @ApiModelProperty(value = "status")
        private Integer status;

        @ApiModelProperty(value = "是否测试账号")
        private Integer testAccount;
        @ApiModelProperty(value = "每次更换国家时同步国家的时区")
        private Integer timezone;
        @ApiModelProperty(value = "1:NRIC_FIN 2:Passport 3:Birth_certificate 4:Driving_license 5:Child_photo")
        private Integer type;
        @ApiModelProperty(value = "verifiedDoctorId")
        private String verifiedDoctorId;
        @ApiModelProperty(value = "weight")
        private BigDecimal weight;
        @ApiModelProperty("实体ID")
        private String id;
        @ApiModelProperty("创建时间Utc")
        private Long createdOnUtc;
        @ApiModelProperty("创建人名称")
        private String createdByName;


}